# -*- coding：utf-8 -*-
"""
@Time:2024-08-1818:40
@Auth:泛彼泊舟
@File:7、反射删除实例属性.py
@IDE:PyCharm
@模块功能：xxx
"""
"""
不想让这个对象拥有这个属性
可以通过dealttr()内置函数可以删除对象的实例属性
"""
class A:
    o = 888
    def __init__(self):
        self.i = 666

    def a(self):
        print("a方法被调用了")

    def b(self):
        print("b方法被调用了")

    def c(self):
        print("c方法被调用了")

    def d(self):
        print("d方法被调用了")


def func():
    print("func被调用啦")


x = A()
# 删除对应的实例属性
delattr(x,"i")
# print(x.i)  # 'A' object has no attribute 'i',对象x的i属性被删除之后没有该属性了
# 方法不能删除

print(x.o)
# 类属性和实例方法、类方法都不能删除，只能删除对象的实例属性
delattr(x,"o")  # 不能删除
print(x.o)
